package superdemo;

class A{
	int a1;  //被子类继承的
	int a2;
}
class B extends A{
	int a1;  //子类自己声明的a1，B类拥有两个a1,一个是自己对象范围，一个是继承父类范围
	
	public void testb() {
		this.a1 = 1;
		// 当子类和父类属性同名了，使用super.父类的属性，通常子类不会起和父类同名属性
		// super是指向对象继承来的那部分, this和super都指向同一个对象的不同部分
		// static方法中不能使用this和super
		super.a1 = 2;
		super.a2 = 3; 
		System.out.println(super.a1);
	}
}
public class Demo1 {
	public static void main(String[] args) {
		B b = new B();
		b.a1 = 1;
		b.testb();
		b.a2 = 2;
	}
}
